Skip to content

Conversation

@ferrants
Copy link

@ferrants ferrants commented Jan 2, 2024

Fixes #296

Description of the Change

Adds another Oauth Lib Core that isn't broken for base64 encoded form submissions.

Checklist

  • PR only contains one change (considered splitting up PR)
  • unit-test added
  • documentation updated
  • CHANGELOG.md updated (only for user relevant changes)
  • author name in AUTHORS

# if request.content_type in ['multipart/form-data', 'application/x-www-form-urlencoded']:
if request.content_type in ["application/x-www-form-urlencoded"]:
query_string = base64.b64decode(request.body).decode("utf-8")
query_params = {p.split("=")[0]: p.split("=")[1] for p in query_string.split("&")}
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a safer way to do this

@ferrants ferrants marked this pull request as draft January 2, 2024 21:04
@codecov
Copy link

codecov bot commented Jan 2, 2024

Codecov Report

Attention: 9 lines in your changes are missing coverage. Please review.

Comparison is base (3e11703) 97.56% compared to head (27cd68f) 97.15%.

Files Patch % Lines
oauth2_provider/oauth2_backends.py 25.00% 9 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1382      +/-   ##
==========================================
- Coverage   97.56%   97.15%   -0.41%     
==========================================
  Files          32       32              
  Lines        2132     2143      +11     
==========================================
+ Hits         2080     2082       +2     
- Misses         52       61       +9     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@dopry
Copy link
Member

dopry commented Nov 3, 2025

@ferrants thanks for opening the PR. We really need a test demonstrating the error and testing the fix. There are also the remainiing itms on the check list. Do you have time to complete this work?

@ferrants
Copy link
Author

ferrants commented Nov 3, 2025

This was two years ago. I don't recall. Close if you want, I don't care

@dopry
Copy link
Member

dopry commented Nov 4, 2025

Thanks for getting back to me. I'll close it.

@dopry dopry closed this Nov 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

JSONOAuthLibCore breaks multipart form-data request for django-rest-framework

2 participants